package com.alameda.api.manage;

import com.alameda.commonpent.mp.BaseService;
import com.alameda.manage.dto.ManageDTO;
import com.alameda.manage.pojo.ManageDO;
import com.alameda.manage.vo.ManageVO;
import com.baomidou.mybatisplus.core.metadata.IPage;

import java.util.List;

/**
 * 项目管理 业务逻辑层
 *
 * @author Lv
 * @date 2024/08/04
 */
public interface ManageService extends BaseService<ManageDO> {
    /**
     * 查询项目管理列表
     *
     * @param manageDTO 项目管理数据传递对象
     * @return
     */
    IPage<ManageVO> loadManage(ManageDTO manageDTO);

    /**
     * 添加或修改项目管理信息
     *
     * @param manageDTO 项目管理数据传递对象
     * @return
     */
    Boolean addOrEditManage(ManageDTO manageDTO);

    /**
     * 导出excel
     *
     * @param manageDTO 项目管理数据传递对象
     */
    void export(ManageDTO manageDTO);

    /**
     * 查询所有项目管理信息
     *
     * @return
     */
    default List<ManageDO> listProject() {
        return this.list();
    }

    /**
     * 删除项目相关信息
     *
     * @param idList 项目id集合
     * @return
     */
    Boolean removeByIdList(List<Long> idList);
}
